home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / t_os / defgen / defgen05.bas < prev    next >
BASIC Source File  |  1993-07-08  |  37KB  |  955 lines

  1. 100 ' CATLOG.DEF GENERATOR
  2. 200 ' SAVE "DEFGEN05.BAS",A
  3. 300 '   Author -- Tomoya Andoh -- NIFTY-Serve ID PED00201
  4. 400 '
  5. 500 ' Ver. 0-1  ---  Date 17 Jan.1993
  6. 510 ' Ver. 0-2  ---  Date 29 Jan.1993
  7. 520 ' Ver. 0-3  ---  Date  1 Feb.1993
  8. 530 ' Ver. 0-4  ---  Date 14 Feb.1993
  9. 540 ' Ver. 0-5  ---  Date 19 Feb.1993
  10. 542 ' Ver. 0-5a ---  Date 21 Feb.1993
  11. 544 ' Ver. 0-5b ---  Date 24 Feb.1993
  12. 600 '
  13. 700 '
  14. 800 '
  15. 1000 ON ERROR GOTO *エラーやで
  16. 1050 DEFINT A-Z
  17. 1100 DIM CMD$(100),MES$(100),DF$(100),MOT$(200),Y_N_FLAG(100)
  18. 1150   VER$="v0.5"
  19. 1200 SCREEN@ 2
  20. 1250   WIDTH 0,25
  21. 1300   WINDOW
  22. 1350   PALETTE
  23. 1400   CONSOLE 2,21,2
  24. 1450   GOSUB *パレット設定
  25. 1500   COLOR 7,%200,,0
  26. 1550   CLS
  27. 1600   GOSUB *開始画面設定
  28. 1650   GOSUB *コマンドリストREAD
  29. 1700   GOSUB *元DEFファイル読み込み
  30. 1710   GOSUB *強制サポートセット
  31. 1750 '  FOR I=0 TO 50:PRINT USING "###:@";I,DF$(I),:NEXT I:A$=INPUT$(1)
  32. 1800 '
  33. 1850 '文字定数定義
  34. 1900   TB$=CHR$(&H09)
  35. 1950 'マウス設定_0
  36. 2000   MOUSE 0
  37. 2050   MOUSE 4,5*8-2,1*19,75*8+2,24*19
  38. 2100   ON MOUSE(2) GOSUB *左クリック_0
  39. 2150   MOUSE(2) ON
  40. 2200 *LOOP_0
  41. 2250   LOCATE 18,22 : PRINT "マウス 左クリックで次にすすみます";
  42. 2300   WAIT 36
  43. 2350   LOCATE 18,22 : PRINT "                                 ";
  44. 2400   WAIT 12
  45. 2450   GOTO *LOOP_0
  46. 2500 *次頁
  47. 2550 'マウス設定_1
  48. 2600   ON MOUSE(2) GOSUB *左クリック
  49. 2650   ON MOUSE(4) GOSUB *右クリック
  50. 2700   MOUSE 1,10,10,1
  51. 2750   GOSUB *設定画面表示
  52. 2800   MOUSE(2) ON
  53. 2850   MOUSE(4) ON
  54. 2900 *LOOP : GOTO *LOOP
  55. 2950 *終了処理
  56. 3000   MOUSE 5
  57. 3050   IF R_CODE THEN
  58. 3100       GOSUB *更新処理
  59. 3150   ELSE
  60. 3200       GOSUB *中断処理
  61. 3250   ENDIF
  62. 3300   PALETTE
  63. 3350   PLAY OFF
  64. 3400   CONSOLE 0,25,0
  65. 3450   COLOR 7,0,7,0
  66. 3500   CLS
  67. 3550   END
  68. 3600 *左クリック
  69. 3650   MOUSE(2) OFF
  70. 3700   SX=MOUSE(0) : SY=MOUSE(1)
  71. 3750   WX=SX \ 8 : WY=SY \ 19
  72. 3800   PLAY "N"+STR$(WY+48)
  73. 3850 '  LOCATE 45,20 : PRINT USING "SX=#### SY=####  WX=#### WY=####";SX,SY,WX,WY
  74. 3900 'Y=1 終了処理
  75. 3950   IF SY>=19 AND SY<=36 THEN
  76. 4000       IF SX>=502 AND SX<600 THEN R_CODE=-1 : RETURN *終了処理
  77. 4050       IF SX>=198 AND SX<=312 THEN R_CODE=0 : RETURN *終了処理
  78. 4100   ENDIF
  79. 4150   IF PAGE=3 THEN *左クリック_2
  80. 4200 'Y=3 入力
  81. 4250   IF SY>=57 AND SY<=74 THEN J=100 : GOSUB *キー入力
  82. 4300 'Y=4 出力
  83. 4350   IF SY>=76 AND SY<=93 THEN J=1 : GOSUB *キー入力
  84. 4400 'Y=5 TMP
  85. 4450   IF SY>=95 AND SY<=112 THEN
  86. 4500       J=3
  87. 4550       IF SX>=70 THEN GOSUB *キー入力
  88. 4600       IF SX<=64 THEN GOSUB *ON_OFF
  89. 4650   ENDIF
  90. 4700 'Y=7 検索
  91. 4750   IF SY>=133 AND SY<=150 THEN
  92. 4800       J=16
  93. 4850       IF SX>=70 THEN GOSUB *キー入力
  94. 4900       IF SX<=64 THEN GOSUB *ON_OFF
  95. 4950   ENDIF
  96. 5000 'Y=8 No検索
  97. 5050   IF SY>=152 AND SY<=169 THEN
  98. 5100       J=15
  99. 5150       IF SX>=70 THEN GOSUB *キー入力
  100. 5200       IF SX<=64 THEN GOSUB *ON_OFF
  101. 5250   ENDIF
  102. 5300 'Y=10 メッセージ出力
  103. 5350   IF SY>=190 AND SY<=207 THEN
  104. 5400       J=0
  105. 5450       IF SX>=70 THEN GOSUB *キー入力
  106. 5500       IF SX<=64 THEN GOSUB *ON_OFF
  107. 5550   ENDIF
  108. 5600 'Y=12 TMPO-SIZE
  109. 5650   IF SY>=228 AND SY<=245 THEN
  110. 5700       J=17
  111. 5750       IF SX>=70 THEN GOSUB *キー入力
  112. 5800       IF SX<=64 THEN GOSUB *ON_OFF
  113. 5850   ENDIF
  114. 5900 'Y=13 MOJI-SIZE
  115. 5950   IF SY>=247 AND SY<=264 THEN
  116. 6000       J=36
  117. 6050       IF SX>=70 THEN GOSUB *キー入力
  118. 6100       IF SX<=64 THEN GOSUB *ON_OFF
  119. 6150   ENDIF
  120. 6200 'Y=15 インデックスモード
  121. 6250   IF SY>=285 AND SY<=302 THEN
  122. 6300       J=2
  123. 6350       IF DF$(2)=":2" AND SX>=190 AND SX<=288 THEN
  124. 6400            DF$(2)=":1" : GOSUB *SW2
  125. 6450       ENDIF
  126. 6500       IF DF$(2)=":1" AND SX>=294 AND SX<=392 THEN
  127. 6550            DF$(2)=":2" : GOSUB *SW2
  128. 6600       ENDIF
  129. 6650   ENDIF
  130. 6700 'Y=16 メールの扱い
  131. 6750   IF SY>=304 AND SY<=321 THEN
  132. 6800       J=4
  133. 6850       IF Y_N_FLAG(J)=0 AND SX>=294 AND SX<=328 THEN GOSUB *オプション選択
  134. 6900       IF Y_N_FLAG(J)=1 AND SX>=334 AND SX<=384 THEN GOSUB *オプション選択
  135. 6950   ENDIF
  136. 7000 'Y=17 新ファイル作成条件
  137. 7050   IF SY>=327 AND SY<=340 THEN
  138. 7100       IF SX>=38 AND SX<=240 THEN J=37 : GOSUB *オプション選択
  139. 7150       IF SX>=254 AND SX<=512 THEN J=38 : GOSUB *オプション選択
  140. 7200   ENDIF
  141. 7250 'Y=19 オプション
  142. 7300   IF SY>=361 AND SY<=378 THEN
  143. 7350       IF SX>=38 AND SX<=328 THEN J=32 : GOSUB *オプション選択
  144. 7400   ENDIF
  145. 7450 'Y=20 オプション
  146. 7500   IF SY>=380 AND SY<=397 THEN
  147. 7550       IF SX>=38 AND SX<=328 THEN J=39 : GOSUB *オプション選択
  148. 7600       IF SX>=358 AND SX<=552 THEN J=29 : GOSUB *オプション選択
  149. 7650   ENDIF
  150. 7700 'Y=21 オプション
  151. 7750   IF SY>=399 AND SY<=416 THEN
  152. 7800       IF SX>=38 AND SX<=200 THEN J=20 : GOSUB *オプション選択
  153. 7850       IF SX>=214 AND SX<=376 THEN J=22 : GOSUB *オプション選択
  154. 7900       IF SX>=390 AND SX<=552 THEN J=24 : GOSUB *オプション選択
  155. 7950   ENDIF
  156. 8000 'Y=22 オプション & 次頁
  157. 8050   IF SY>=418 AND SY<=435 THEN
  158. 8100       IF SX>=38 AND SX<=200 THEN J=21 : GOSUB *オプション選択
  159. 8150       IF SX>=214 AND SX<=376 THEN J=23 : GOSUB *オプション選択
  160. 8200       IF SX>=390 AND SX<=552 THEN J=25 : GOSUB *オプション選択
  161. 8250       IF SX>=566 THEN PAGE=3 : GOSUB *設定画面2
  162. 8300   ENDIF
  163. 8350   MOUSE(2) ON
  164. 8400   RETURN
  165. 8450 *左クリック_2
  166. 8500 'Y=3 中断 & 続行
  167. 8550   IF SY>=57 AND SY<=74 THEN
  168. 8600       IF SX>=38 AND SX<=312 THEN
  169. 8650           IF Y_N_FLAG(7)=0 AND Y_N_FLAG(8)=1 THEN
  170. 8700               J=8 : GOSUB *オプション選択
  171. 8750           ENDIF
  172. 8800           J=7 : GOSUB *オプション選択
  173. 8850       ENDIF
  174. 8900       IF SX>=326 AND SX<=600 THEN
  175. 8950           IF Y_N_FLAG(7)=1 AND Y_N_FLAG(8)=0 THEN
  176. 9000               J=7 : GOSUB *オプション選択
  177. 9050           ENDIF
  178. 9100           J=8 : GOSUB *オプション選択
  179. 9150       ENDIF
  180. 9200   ENDIF
  181. 9250 'Y=4 All_Yes,All_No & All引用
  182. 9300   IF SY>=76 AND SY<=93 THEN
  183. 9350       IF SX>=38 AND SX<=224 THEN
  184. 9400           IF Y_N_FLAG(9)=0 AND Y_N_FLAG(10)=1 THEN
  185. 9450               J=10 : GOSUB *オプション選択
  186. 9500           ENDIF
  187. 9550           J=9 : GOSUB *オプション選択
  188. 9600       ENDIF
  189. 9650       IF SX>=238 AND SX<=416 THEN
  190. 9700           IF Y_N_FLAG(9)=1 AND Y_N_FLAG(10)=0 THEN
  191. 9750               J=9 : GOSUB *オプション選択
  192. 9800           ENDIF
  193. 9850           J=10 : GOSUB *オプション選択
  194. 9900       ENDIF
  195. 9950       IF SX>=430 AND SX<=600 THEN J=26 : GOSUB *オプション選択
  196. 10000   ENDIF
  197. 10050 'Y=5 DON作らない,静かに,だまれ
  198. 10100   IF SY>=95 AND SY<=112 THEN
  199. 10150       IF SX>=38 AND SX<=216 THEN J=13 : GOSUB *オプション選択
  200. 10200       IF SX>=230 AND SX<=408 THEN J=5 : GOSUB *オプション選択
  201. 10250       IF SX>=422 AND SX<=600 THEN J=6 : GOSUB *オプション選択
  202. 10300   ENDIF
  203. 10350 'Y=7 全ファイル検索
  204. 10400   IF SY>=133 AND SY<=150 THEN J=14 : GOSUB *オプション選択
  205. 10450 'Y=8 サブディレクトリ内無視
  206. 10500   IF SY>=152 AND SY<=169 THEN J=30 : GOSUB *オプション選択
  207. 10550 'Y=10 yymmdd以降&以前収集
  208. 10600   IF SY>=190 AND SY<=207 THEN
  209. 10650       IF SX<=64 THEN J=18 : GOSUB *ON_OFF
  210. 10700       IF SX>=70 AND SX<=312 THEN J=18 : GOSUB *キー入力
  211. 10750       IF SX>=326 AND SX<=352 THEN J=19 : GOSUB *ON_OFF
  212. 10800       IF SX>=358 AND SX<=600 THEN J=19 : GOSUB *キー入力
  213. 10850   ENDIF
  214. 10900 'Y=11 ID収集
  215. 10950   IF SY>=209 AND SY<=226 THEN
  216. 11000       J=35
  217. 11050       IF SX<=64 THEN GOSUB *ON_OFF
  218. 11100       IF SX>=70 THEN GOSUB *キー入力
  219. 11150   ENDIF
  220. 11200 'Y=12 整理済ログからID収集
  221. 11250   IF SY>=228 AND SY<=245 THEN
  222. 11300       J=46
  223. 11350       IF SX<=64 THEN GOSUB *ON_OFF
  224. 11400       IF SX>=70 THEN GOSUB *キー入力
  225. 11450   ENDIF
  226. 11500 'Y=14 今日より古いファイルの削除,フォーラムトップライン削除
  227. 11550   IF SY>=266 AND SY<=283 THEN
  228. 11600       IF SX>=38 AND SX<=312 THEN J=27 : GOSUB *オプション選択
  229. 11650       IF SX>=326 AND SX<=600 THEN J=40 : GOSUB *オプション選択
  230. 11700   ENDIF
  231. 11750 'Y=15 削除した発言の表題を表示
  232. 11800   IF SY>=285 AND SY<=302 THEN
  233. 11850       IF SX>=38 AND SX<=312 THEN J=41 : GOSUB *オプション選択
  234. 11900   ENDIF
  235. 11950 'Y=16 削除から除くファイル名
  236. 12000   IF SY>=304 AND SY<=321 THEN
  237. 12050       J=28
  238. 12100       IF SX<=64 THEN GOSUB *ON_OFF
  239. 12150       IF SX>=70 THEN GOSUB *キー入力
  240. 12200   ENDIF
  241. 12250 'Y=18 凍結しながら実行,ログ表示しながら実行
  242. 12300   IF SY>=342 AND SY<=359 THEN
  243. 12350       IF SX>=38 AND SX<=328 THEN J=33 : GOSUB *オプション選択
  244. 12400       IF SX>=342 AND SX<=600 THEN J=31 : GOSUB *オプション選択
  245. 12450   ENDIF
  246. 12500 'Y=19 CATLOG生成ファイルからインデックス作成,ID/ハンドル対応ファイル作成
  247. 12550   IF SY>=361 AND SY<=378 THEN
  248. 12600       IF SX>=38 AND SX<=328 THEN J=44 : GOSUB *オプション選択
  249. 12650       IF SX>=342 AND SX<=600 THEN J=45 : GOSUB *オプション選択
  250. 12700   ENDIF
  251. 12750 'Y=20 ファイルと会議室対応ファイル作成
  252. 12800   IF SY>=380 AND SY<=397 THEN
  253. 12850       J=43
  254. 12900       IF SX<=64 THEN GOSUB *ON_OFF
  255. 12950       IF SX>=70 THEN GOSUB *キー入力
  256. 13000   ENDIF
  257. 13050 'Y=21 DL出力ドライブ・ディレクトリ
  258. 13100   IF SY>=399 AND SY<=416 THEN
  259. 13150       J=42
  260. 13200       IF SX<=64 THEN GOSUB *ON_OFF
  261. 13250       IF SX>=70 THEN GOSUB *キー入力
  262. 13300   ENDIF
  263. 13350 'Y=22 FAPXログ保存モード,前頁
  264. 13400   IF SY>=418 AND SY<=435 THEN
  265. 13450       J=47
  266. 13500       IF SX<=64 THEN GOSUB *ON_OFF
  267. 13550       IF SX>=270 AND SX<=336 AND DF$(J)=":2" THEN DF$(J)=":1" : GOSUB *SW47
  268. 13600       IF SX>=350 AND SX<=416 AND DF$(J)=":1" THEN DF$(J)=":2" : GOSUB *SW47
  269. 13650       IF SX>=566 THEN
  270. 13700           PAGE=2
  271. 13750           GOSUB *設定画面1
  272. 13800       ENDIF
  273. 13850   ENDIF
  274. 13900   MOUSE(2) ON
  275. 13950   RETURN
  276. 14000 *右クリック
  277. 14050   R_CODE=0
  278. 14100   RETURN *終了処理
  279. 14150 *左クリック_0
  280. 14200   MOUSE(2) OFF
  281. 14250   PAGE=PAGE+1
  282. 14300   RETURN *次頁
  283. 14350 *オプション選択
  284. 14400   GOSUB *設定変更
  285. 14450   GOSUB *DISP_COM
  286. 14500   RETURN
  287. 14550 *ON_OFF
  288. 14600   IF Y_N_FLAG(J)=1 THEN Y_N_FLAG(J)=0 ELSE Y_N_FLAG(J)=1
  289. 14650   GOSUB *DISP_COM
  290. 14700   RETURN
  291. 14750 *設定変更
  292. 14800   IF DF$(J)="yes" THEN
  293. 14850         DF$(J)="no"
  294. 14900         Y_N_FLAG(J)=0
  295. 14950   ELSE
  296. 15000         DF$(J)="yes"
  297. 15050         Y_N_FLAG(J)=1
  298. 15100   ENDIF
  299. 15150   RETURN
  300. 15200 *DISP_COM
  301. 15250   IF J=100 THEN GOSUB *SW100 : RETURN
  302. 15300   IF J<=30 THEN 15350 ELSE 15450
  303. 15350   ON J+1 GOSUB *SW0,*SW1,*SW2,*SW3,*SW4,*SW5,*SW6,*SW7,*SW8,*SW9,*SW10,*SW11,*SW12,*SW13,*SW14,*SW15,*SW16,*SW17,*SW18,*SW19,*SW20,*SW21,*SW22,*SW23,*SW24,*SW25,*SW26,*SW27,*SW28,*SW29,*SW30
  304. 15400   RETURN
  305. 15450   ON J-30 GOSUB *SW31,*SW32,*SW33,*SW34,*SW35,*SW36,*SW37,*SW38,*SW39,*SW40,*SW41,*SW42,*SW43,*SW44,*SW45,*SW46,*SW47,*SW48
  306. 15500   RETURN
  307. 15550 *キー入力
  308. 15600   GOSUB *キー入力1
  309. 15650   GOSUB *DISP_COM
  310. 15700   RETURN
  311. 15750 *キー入力1
  312. 15800   LOCATE 0,23:PRINT KACNV$(RIGHT$(MES$(J),LEN(MES$(J))-2));"  ";
  313. 15850       X=0:Y=23:M=79:C=205:GOSUB *ボックス
  314. 15900   LINE INPUT DUMMY$
  315. 15950   IF DUMMY$<>"" THEN
  316. 16000       DF$(J)=":"+DUMMY$
  317. 16050   ENDIF
  318. 16100   RETURN
  319. 16550 *設定画面表示
  320. 16600   CLS 1 : CLS 3
  321. 16650   LOCATE 0,1
  322. 16700   LOCATE 63, 1 : PRINT "更新して終了";
  323. 16750   LOCATE 25, 1 : PRINT "更新せずに終了";
  324. 16800     X=63:Y=1:M=12:C=203:GOSUB *ボックス
  325. 16850     X=25:Y=1:M=14:C=204:GOSUB *ボックス
  326. 16900 *設定画面1
  327. 16950   CLS 1
  328. 17000   COLOR 7,%200,,4
  329. 17050     LOCATE  2, 2 : PRINT "ドライブ,ディレクトリを指定してください。"
  330. 17100     WY=3 : GOSUB *SW100
  331. 17150     WY=4 : GOSUB *SW1
  332. 17200     WY=5 : GOSUB *SW3
  333. 17250     LOCATE  2, 6 : PRINT "ファイルを指定してください。(ワイルドカード使用可)"
  334. 17300     WY=7 : GOSUB *SW16
  335. 17350     WY=8 : GOSUB *SW15
  336. 17400     LOCATE  2, 9 : PRINT "メッセージ出力先をフルパスで指定してください。"
  337. 17450     WY=10 : GOSUB *SW0
  338. 17500     LOCATE  2,11 : PRINT "ファイルサイズ指定オプション(1Kバイト単位で指定)"
  339. 17550     WY=12 : GOSUB *SW17
  340. 17600     WY=13 : GOSUB *SW36
  341. 17650     LOCATE  2,14 : PRINT "処理内容を選択してください。"
  342. 17700     WY=15 : GOSUB *SW2
  343. 17750     WY=16 : GOSUB *SW4
  344. 17800     WY=17 : GOSUB *SW37 : GOSUB *SW38
  345. 17850     LOCATE  2,18 : PRINT "オプションを選択してください。"
  346. 17900     WY=19 : GOSUB *SW32
  347. 17950     WY=20 : GOSUB *SW39 : GOSUB *SW29
  348. 18000     WY=21 : GOSUB *SW20 : GOSUB *SW22 : GOSUB *SW24
  349. 18050     WY=22 : GOSUB *SW21 : GOSUB *SW23 : GOSUB *SW25
  350. 18100     LOCATE 71,22 : PRINT "次頁";
  351. 18150       X=71:Y=22:M=4:C=204:GOSUB *ボックス
  352. 18200   COLOR 7,%200,,0
  353. 18250   RETURN
  354. 18300 *設定画面2
  355. 18350   CLS 1
  356. 18400   COLOR 3,%200,,4
  357. 18450     LOCATE  2, 2 : PRINT "この頁のオプション設定はCATLOGのマニュアルをよく読んで理解した上でやってね。(^^)"
  358. 18500   COLOR 7,%200,,4
  359. 18550     WY=3 : GOSUB *SW7 : GOSUB *SW8
  360. 18600     WY=4 : GOSUB *SW9 : GOSUB *SW10 : GOSUB *SW26
  361. 18650     WY=5 : GOSUB *SW13 : GOSUB *SW5 : GOSUB *SW6
  362. 18700     LOCATE  2, 6 : PRINT "検索系オプション"
  363. 18750     WY=7 : GOSUB *SW14
  364. 18800     WY=8 : GOSUB *SW30
  365. 18850     LOCATE  2, 9 : PRINT "収集系オプション(日付入力はyy年mm月dd日をyymmddの形式で入力する)"
  366. 18900     WY=10 : GOSUB *SW18 : GOSUB *SW19
  367. 18950     WY=11 : GOSUB *SW35
  368. 19000     WY=12 : GOSUB *SW46
  369. 19050     LOCATE  2,13 : PRINT "削除系オプション <★DANGER★>"
  370. 19100     WY=14 : GOSUB *SW27 : GOSUB *SW40
  371. 19150     WY=15 : GOSUB *SW41
  372. 19200     WY=16 : GOSUB *SW28
  373. 19250     LOCATE  2,17 : PRINT "その他のオプション"
  374. 19300     WY=18 : GOSUB *SW33 : GOSUB *SW31
  375. 19350     WY=19 : GOSUB *SW44 : GOSUB *SW45
  376. 19400     WY=20 : GOSUB *SW43
  377. 19450     WY=21 : GOSUB *SW42
  378. 19500     WY=22 : GOSUB *SW47
  379. 19550     LOCATE 71,22 : PRINT "前頁";
  380. 19600       X=71:Y=22:M=4:C=204:GOSUB *ボックス
  381. 19650   COLOR 7,%200,,0
  382. 19700   RETURN
  383. 19750 *SW100
  384. 19800       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  385. 19850     LOCATE  5,WY : PRINT "入力ドライブ:ディレクトリ";DF$(100)
  386. 19900                     C=205:GOSUB *ボックス
  387. 19950     RETURN
  388. 20000 *SW1
  389. 20050       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  390. 20100     LOCATE  5,WY : PRINT "出力ドライブ:ディレクトリ";DF$(1)
  391. 20150                     C=205:GOSUB *ボックス
  392. 20200     RETURN
  393. 20250 *SW3
  394. 20300       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  395. 20350       X=9:     M=66:      GOSUB *ボックス_P
  396. 20400     IF Y_N_FLAG(3)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  397. 20450     LOCATE  5,WY : PRINT DUM$;" 作業ドライブ:ディレクトリ";DF$(3)
  398. 20500       X=5:     M=3:C=CL:  GOSUB *ボックス
  399. 20550       X=9:     M=66:C=206:GOSUB *ボックス
  400. 20600     RETURN
  401. 20650 *SW16
  402. 20700       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  403. 20750       X=9:     M=66:      GOSUB *ボックス_P
  404. 20800     IF Y_N_FLAG(16)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  405. 20850     LOCATE  5,WY : PRINT DUM$;" 検索するファイル";DF$(16)
  406. 20900       X=5:     M=3:C=CL:  GOSUB *ボックス
  407. 20950       X=9:     M=66:C=206:GOSUB *ボックス
  408. 21000     RETURN
  409. 21050 *SW15
  410. 21100       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  411. 21150       X=9:     M=66:      GOSUB *ボックス_P
  412. 21200     IF Y_N_FLAG(15)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  413. 21250     LOCATE  5,WY : PRINT DUM$;" 検索しないファイル";DF$(15)
  414. 21300       X=5:     M=3:C=CL:  GOSUB *ボックス
  415. 21350       X=9:     M=66:C=CL: GOSUB *ボックス
  416. 21400     RETURN
  417. 21450 *SW0
  418. 21500   COLOR 6,%200,,4
  419. 21550       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  420. 21600       X=9:     M=66:      GOSUB *ボックス_P
  421. 21650     IF Y_N_FLAG(0)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  422. 21700     LOCATE  5,WY : PRINT DUM$;" メッセージ出力ファイル名";DF$(0)
  423. 21750       X=5:     M=3:C=CL:  GOSUB *ボックス
  424. 21800       X=9:     M=66:C=206:GOSUB *ボックス
  425. 21850   COLOR 7,%200,,4
  426. 21900     RETURN
  427. 21950 *SW2
  428. 22000       X=24:Y=WY:M=12:     GOSUB *ボックス_P
  429. 22050       X=37:     M=12:     GOSUB *ボックス_P
  430. 22100   COLOR 6,%200,,4
  431. 22150     LOCATE  5,WY : PRINT "インデックスモード";
  432. 22200   COLOR 7,%200,,4
  433. 22250     PRINT " 全体でひとつ フォーラム毎"
  434. 22300      IF DF$(2)=":1" THEN CL=207:CE=202 ELSE CL=202:CE=207
  435. 22350       X=24:     M=12:C=CL:GOSUB *ボックス
  436. 22400       X=37:     M=12:C=CE:GOSUB *ボックス
  437. 22450     RETURN
  438. 22500 *SW4
  439. 22550       X=37:Y=WY:M=4:      GOSUB *ボックス_P
  440. 22600       X=42:     M=6:      GOSUB *ボックス_P
  441. 22650   COLOR 6,%200,,4
  442. 22700     LOCATE  5,WY : PRINT "メールはひとつのファイルで処理";
  443. 22750   COLOR 7,%200,,4
  444. 22800     PRINT "  する しない"
  445. 22850       IF Y_N_FLAG(4)=1 THEN CL=207:CE=202 ELSE CL=202:CE=207
  446. 22900       X=37:     M=4:C=CL: GOSUB *ボックス
  447. 22950       X=42:     M=6:C=CE: GOSUB *ボックス
  448. 23000     RETURN
  449. 23050 *SW37
  450. 23100       X=5:Y=WY:M=25:      GOSUB *ボックス_P
  451. 23150     LOCATE  5,WY : PRINT "発言番号001で新ファイルを作る"
  452. 23200      IF Y_N_FLAG(37)=1 THEN CL=207 ELSE CL=202
  453. 23250                     C=CL: GOSUB *ボックス
  454. 23300     RETURN
  455. 23350 *SW38
  456. 23400       X=32:Y=WY:M=32:     GOSUB *ボックス_P
  457. 23450     LOCATE 32,WY : PRINT "より小さな発言番号で新ファイルを作る"
  458. 23500      IF Y_N_FLAG(38)=1 THEN CE=207 ELSE CE=202
  459. 23550                     C=CE: GOSUB *ボックス
  460. 23600     RETURN
  461. 23650 *SW32
  462. 23700       X=5:Y=WY:M=36:      GOSUB *ボックス_P
  463. 23750     LOCATE  5,WY : PRINT "LHA圧縮ファイルを解凍しながら実行"
  464. 23800      IF Y_N_FLAG(32)=1 THEN CL=207 ELSE CL=202
  465. 23850                      C=CL:GOSUB *ボックス
  466. 23900     RETURN
  467. 23950 *SW20
  468. 24000       X=5:Y=WY:M=20:      GOSUB *ボックス_P
  469. 24050     LOCATE  X,WY : PRINT "HPは整理しない";
  470. 24100      IF Y_N_FLAG(20)=1 THEN CL=207 ELSE CL=202
  471. 24150                      C=CL:GOSUB *ボックス
  472. 24200     RETURN
  473. 24250 *SW21
  474. 24300       X=5:Y=WY:M=20:      GOSUB *ボックス_P
  475. 24350     LOCATE  X,WY : PRINT "PATIOは整理しない";
  476. 24400      IF Y_N_FLAG(21)=1 THEN CL=207 ELSE CL=202
  477. 24450                      C=CL:GOSUB *ボックス
  478. 24500     RETURN
  479. 24550 *SW22
  480. 24600       X=27:Y=WY:M=20:     GOSUB *ボックス_P
  481. 24650     LOCATE  X,WY : PRINT "会議室は整理しない";
  482. 24700      IF Y_N_FLAG(22)=1 THEN CL=207 ELSE CL=202
  483. 24750                      C=CL:GOSUB *ボックス
  484. 24800     RETURN
  485. 24850 *SW23
  486. 24900       X=27:Y=WY:M=20:      GOSUB *ボックス_P
  487. 24950     LOCATE X,WY : PRINT "MAILは整理しない";
  488. 25000      IF Y_N_FLAG(23)=1 THEN CL=207 ELSE CL=202
  489. 25050                      C=CL:GOSUB *ボックス
  490. 25100     RETURN
  491. 25150 *SW24
  492. 25200       X=49:Y=WY:M=20:      GOSUB *ボックス_P
  493. 25250     LOCATE X,WY : PRINT "LIBは整理しない";
  494. 25300      IF Y_N_FLAG(24)=1 THEN CL=207 ELSE CL=202
  495. 25350                      C=CL:GOSUB *ボックス
  496. 25400     RETURN
  497. 25450 *SW25
  498. 25500       X=49:Y=WY:M=20:      GOSUB *ボックス_P
  499. 25550     LOCATE X,WY : PRINT "BILLは整理しない";
  500. 25600      IF Y_N_FLAG(25)=1 THEN CL=207 ELSE CL=202
  501. 25650                      C=CL:GOSUB *ボックス
  502. 25700     RETURN
  503. 25750 *SW39
  504. 25800       X=5:Y=WY:M=36:      GOSUB *ボックス_P
  505. 25850     LOCATE 5,WY : PRINT "「*****log整理」を入れない";
  506. 25900      IF Y_N_FLAG(39)=1 THEN CL=207 ELSE CL=202
  507. 25950                      C=CL:GOSUB *ボックス
  508. 26000     RETURN
  509. 26050 *SW7
  510. 26100       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  511. 26150     IF Y_N_FLAG(7)=1 THEN CL=207 ELSE CL=202
  512. 26200     LOCATE  5,WY : PRINT "処理を第2段階で中断する"
  513. 26250                      C=CL:GOSUB *ボックス
  514. 26300     RETURN
  515. 26350 *SW8
  516. 26400       X=41:Y=WY:M=34:     GOSUB *ボックス_P
  517. 26450     IF Y_N_FLAG(8)=1 THEN CE=207 ELSE CE=202
  518. 26500     LOCATE 41,WY : PRINT "中断した処理を続行する"
  519. 26550                      C=CE:GOSUB *ボックス
  520. 26600     RETURN
  521. 26650 *SW9
  522. 26700       X=5:Y=WY:M=23:      GOSUB *ボックス_P
  523. 26750     IF Y_N_FLAG(9)=1 THEN CL=207 ELSE CL=202
  524. 26800     LOCATE  5,WY : PRINT "全ての質問にYESと答える"
  525. 26850                      C=CL:GOSUB *ボックス
  526. 26900     RETURN
  527. 26950 *SW10
  528. 27000       X=30:Y=WY:M=22:     GOSUB *ボックス_P
  529. 27050     IF Y_N_FLAG(10)=1 THEN CE=207 ELSE CE=202
  530. 27100     LOCATE 30,WY : PRINT "全ての質問にNOと答える"
  531. 27150                      C=CE:GOSUB *ボックス
  532. 27200     RETURN
  533. 27250 *SW26
  534. 27300       X=54:Y=WY:M=21:      GOSUB *ボックス_P
  535. 27350     IF Y_N_FLAG(26)=1 THEN CL=207 ELSE CL=202
  536. 27400     LOCATE 54,WY : PRINT "全部引用発言とする"
  537. 27450                      C=CL:GOSUB *ボックス
  538. 27500     RETURN
  539. 27550 *SW13
  540. 27600       X=5:Y=WY:M=22:      GOSUB *ボックス_P
  541. 27650     IF Y_N_FLAG(13)=1 THEN CL=207 ELSE CL=202
  542. 27700     LOCATE  5,WY : PRINT "CATLOG.DONを作らない"
  543. 27750                      C=CL:GOSUB *ボックス
  544. 27800     RETURN
  545. 27850 *SW5
  546. 27900       X=29:Y=WY:M=22:     GOSUB *ボックス_P
  547. 27950     IF Y_N_FLAG(5)=1 THEN CE=207 ELSE CE=202
  548. 28000     LOCATE 29,WY : PRINT "静かに モード"
  549. 28050                      C=CE:GOSUB *ボックス
  550. 28100     RETURN
  551. 28150 *SW6
  552. 28200       X=53:Y=WY:M=22:     GOSUB *ボックス_P
  553. 28250     IF Y_N_FLAG(6)=1 THEN CQ=207 ELSE CQ=202
  554. 28300     LOCATE 53,WY : PRINT "だまれ モード"
  555. 28350                      C=CQ:GOSUB *ボックス
  556. 28400     RETURN
  557. 28450 *SW14
  558. 28500       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  559. 28550     IF Y_N_FLAG(14)=1 THEN CL=207 ELSE CL=202
  560. 28600     LOCATE  5,WY : PRINT "全ファイルを検索対象とする(前頁のオプションより優先します)遅くなるよ(^^;)"
  561. 28650                      C=CL:GOSUB *ボックス
  562. 28700     RETURN
  563. 28750 *SW30
  564. 28800       X=5:Y=WY:M=70:      GOSUB *ボックス_P
  565. 28850     IF Y_N_FLAG(30)=1 THEN CL=207 ELSE CL=202
  566. 28900     LOCATE  5,WY : PRINT "サブ・ディレクトリの検索をおこなわない"
  567. 28950                      C=CL:GOSUB *ボックス
  568. 29000     RETURN
  569. 29050 *SW18
  570. 29100       X=5:Y=WY:M=3 :      GOSUB *ボックス_P
  571. 29150       X=9:     M=30:      GOSUB *ボックス_P
  572. 29200     IF Y_N_FLAG(18)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  573. 29250     LOCATE  5,WY : PRINT USING "& & &&年&&月&&日以降の発言収集";DUM$,MID$(DF$(18),2,2),MID$(DF$(18),4,2),MID$(DF$(18),6,2)
  574. 29300       X=5:     M=3 :C=CL: GOSUB *ボックス
  575. 29350       X=9:     M=30:      GOSUB *ボックス
  576. 29400    RETURN
  577. 29450 *SW19
  578. 29500       X=41:Y=WY:M=3 :     GOSUB *ボックス_P
  579. 29550       X=45:     M=30:     GOSUB *ボックス_P
  580. 29600     IF Y_N_FLAG(19)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  581. 29650     LOCATE 41,WY : PRINT USING "& & &&年&&月&&日以前の発言収集";DUM$,MID$(DF$(19),2,2),MID$(DF$(19),4,2),MID$(DF$(19),6,2)
  582. 29700       X=41:     M=3 :C=CL:GOSUB *ボックス
  583. 29750       X=45:     M=30:     GOSUB *ボックス
  584. 29800    RETURN
  585. 29850 *SW35
  586. 29900       X=5:Y=WY:M=3 :      GOSUB *ボックス_P
  587. 29950       X=9:     M=66:      GOSUB *ボックス_P
  588. 30000     IF Y_N_FLAG(35)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  589. 30050     LOCATE  5,WY : PRINT DUM$;" IDの発言収集(複数指定可)";DF$(35)
  590. 30100       X=5:     M=3 :C=CL: GOSUB *ボックス
  591. 30150       X=9:     M=66:      GOSUB *ボックス
  592. 30200    RETURN
  593. 30250 *SW46
  594. 30300       X=5:Y=WY:M=3 :      GOSUB *ボックス_P
  595. 30350       X=9:     M=66:      GOSUB *ボックス_P
  596. 30400     IF Y_N_FLAG(46)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202
  597. 30450     LOCATE  5,WY : PRINT DUM$;" 整理済のファイルからIDで発言収集";DF$(46)
  598. 30500       X=5:     M=3 :C=CL: GOSUB *ボックス
  599. 30550       X=9:     M=66:      GOSUB *ボックス
  600. 30600    RETURN
  601. 30650 *SW17
  602. 30700       X=5:Y=WY:M=3:       GOSUB *ボックス_P
  603. 30750       X=9:     M=66:      GOSUB *ボックス_P
  604. 30800     IF Y_N_FLAG(17)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  605. 30850     LOCATE  5,WY : PRINT DUM$;" テンポラリファイルサイズ(無指定で10240KB)";DF$(17)
  606. 30900       X=5:     M=3 :C=CL: GOSUB *ボックス
  607. 30950       X=9:     M=66:      GOSUB *ボックス
  608. 31000     RETURN
  609. 31050 *SW36
  610. 31100       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  611. 31150       X=9:     M=66:      GOSUB *ボックス_P
  612. 31200     IF Y_N_FLAG(36)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  613. 31250     LOCATE  5,WY : PRINT DUM$;" ひとつのファイルサイズ(無指定で800KB)";DF$(36)
  614. 31300       X=5:     M=3 :C=CL: GOSUB *ボックス
  615. 31350       X=9:     M=66:      GOSUB *ボックス
  616. 31400     RETURN
  617. 31450 *SW27
  618. 31500       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  619. 31550     IF Y_N_FLAG(27)=1 THEN CL=207 ELSE CL=202
  620. 31600     LOCATE  5,WY : PRINT "今日より古いファイルを削除/危険(~~)"
  621. 31650                      C=CL:GOSUB *ボックス
  622. 31700     RETURN
  623. 31750 *SW40
  624. 31800       X=41:Y=WY:M=34:      GOSUB *ボックス_P
  625. 31850     IF Y_N_FLAG(40)=1 THEN CL=207 ELSE CL=202
  626. 31900     LOCATE 41,WY : PRINT "- FFMHOB MES(  )の行を削除"
  627. 31950                      C=CL:GOSUB *ボックス
  628. 32000     RETURN
  629. 32050 *SW41
  630. 32100       X=5:Y=WY:M=34:      GOSUB *ボックス_P
  631. 32150     IF Y_N_FLAG(41)=1 THEN CL=207 ELSE CL=202
  632. 32200     LOCATE  5,WY : PRINT "削除した発言の表題を表示する"
  633. 32250                      C=CL:GOSUB *ボックス
  634. 32300     RETURN
  635. 32350 *SW28
  636. 32400       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  637. 32450       X=9:     M=66:      GOSUB *ボックス_P
  638. 32500     IF Y_N_FLAG(28)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  639. 32550     LOCATE  5,WY : PRINT DUM$;" 削除から除くファイル名(複数指定可)";DF$(28);
  640. 32600       X=5:     M=3 :C=CL: GOSUB *ボックス
  641. 32650       X=9:     M=66:      GOSUB *ボックス
  642. 32700     RETURN
  643. 32750 *SW33
  644. 32800       X=5:Y=WY:M=36:      GOSUB *ボックス_P
  645. 32850     IF Y_N_FLAG(33)=1 THEN CL=207 ELSE CL=202
  646. 32900     LOCATE  5,WY : PRINT "ログを入力ディレクトリ毎に凍結しながら実行";
  647. 32950                      C=CL:GOSUB *ボックス
  648. 33000     RETURN
  649. 33050 *SW43
  650. 33100       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  651. 33150       X=9:Y=WY:M=66:      GOSUB *ボックス_P
  652. 33200     IF Y_N_FLAG(43)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  653. 33250     LOCATE  5,WY : PRINT DUM$;" ファイルと会議室の対応ファイル(フルパスのファイル名)";DF$(43)
  654. 33300       X=5:     M=3 :C=CL: GOSUB *ボックス
  655. 33350       X=9:     M=66:      GOSUB *ボックス
  656. 33400     RETURN
  657. 33450 *SW42
  658. 33500       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  659. 33550       X=9:     M=66:      GOSUB *ボックス_P
  660. 33600     IF Y_N_FLAG(42)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  661. 33650     LOCATE  5,WY : PRINT DUM$;" データライブラリを別に整理:出力ドライブ:ディレクトリ";DF$(42);
  662. 33700       X=5:     M=3 :C=CL: GOSUB *ボックス
  663. 33750       X=9:     M=66:      GOSUB *ボックス
  664. 33800     RETURN
  665. 33850 *SW44
  666. 33900       X=5:Y=WY:M=36:      GOSUB *ボックス_P
  667. 33950     IF Y_N_FLAG(44)=1 THEN CL=207 ELSE CL=202
  668. 34000     LOCATE  5,WY : PRINT "CATLOG整理ファイルからインデックスを作る";
  669. 34050                      C=CL:GOSUB *ボックス
  670. 34100     RETURN
  671. 34150 *SW45
  672. 34200       X=43:Y=WY:M=32:      GOSUB *ボックス_P
  673. 34250     IF Y_N_FLAG(45)=1 THEN CL=207 ELSE CL=202
  674. 34300     LOCATE 43,WY : PRINT "ID/ハンドル対応ファイルを作る";
  675. 34350                      C=CL:GOSUB *ボックス
  676. 34400     RETURN
  677. 34450 *SW31
  678. 34500       X=43:Y=WY:M=32:      GOSUB *ボックス_P
  679. 34550     IF Y_N_FLAG(31)=1 THEN CL=207 ELSE CL=202
  680. 34600     LOCATE 43,WY : PRINT "ログ表示しながら実行する";
  681. 34650                      C=CL:GOSUB *ボックス
  682. 34700     RETURN
  683. 34750 *SW47
  684. 34800     IF DF$(47)=":1" THEN CE=207 : CQ=202 ELSE CE=202 : CQ=207
  685. 34850       X=5:Y=WY:M=3:       GOSUB *ボックス_P 
  686. 34900       X=34:    M=8 :      GOSUB *ボックス_P
  687. 34950       X=44:    M=8 :      GOSUB *ボックス_P
  688. 35000     IF Y_N_FLAG(47)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202
  689. 35050     LOCATE  5,WY : PRINT DUM$;
  690. 35100     COLOR 6 : PRINT " FAPXのログ保存モード";
  691. 35150     COLOR 7 : PRINT " 圧縮なし  圧縮あり";
  692. 35200       X=5:     M=3 :C=CL: GOSUB *ボックス
  693. 35250       X=34:     M=8 :C=CE:GOSUB *ボックス
  694. 35300       X=44:     M=8 :C=CQ:GOSUB *ボックス
  695. 35350     RETURN
  696. 35400 *SW29
  697. 35450       X=45:Y=WY:M=24:      GOSUB *ボックス_P
  698. 35500     IF Y_N_FLAG(29)=1 THEN CL=207 ELSE CL=202
  699. 35550     LOCATE 45,WY : PRINT "削除発言は整理に含めない";
  700. 35600                      C=CL:GOSUB *ボックス
  701. 35650     RETURN
  702. 35700 '未サポート
  703. 35750 *SW11
  704. 35800 *SW12
  705. 35850 *SW34
  706. 35900 *SW48
  707. 35950    RETURN
  708. 36000 *ボックス:LINE (8*X-2,19*Y)-(8*X+8*M,19*Y+17),OR,%C,BF : RETURN
  709. 36050 *ボックス_P:LINE (8*X-2,19*Y)-(8*X+8*M,19*Y+17),PSET,%200,BF : RETURN
  710. 36100 STOP
  711. 36150 *更新処理
  712. 36200   KILL "..\CATLOG.DEF"
  713. 36250   OPEN "..\CATLOG.DEF" FOR OUTPUT AS #1
  714. 36300   PRINT #1,";DEFGEN生成ファイル"
  715. 36350   FOR I=0 TO 100
  716. 36400       IF Y_N_FLAG(I)<>-1 THEN
  717. 36450           IF Y_N_FLAG(I)>0 THEN
  718. 36500               IF LEFT$(DF$(I),1)=":" THEN
  719. 36550                   DUMMY$=TB$+CMD$(I)+DF$(I)+TB$+MES$(I)
  720. 36600               ELSE
  721. 36650                   DUMMY$=TB$+CMD$(I)+TB$+MES$(I)
  722. 36700               ENDIF
  723. 36750           ELSE
  724. 36800               IF LEFT$(DF$(I),1)=":" THEN
  725. 36850                   DUMMY$=";"+TB$+CMD$(I)+DF$(I)+TB$+MES$(I)
  726. 36900               ELSE
  727. 36950                   DUMMY$=";"+TB$+CMD$(I)+TB$+MES$(I)
  728. 37000               ENDIF
  729. 37050           ENDIF
  730. 37100           PRINT #1,DUMMY$
  731. 37150       ENDIF
  732. 37200   NEXT I
  733. 37250   CLOSE #1
  734. 37300   RETURN
  735. 37350 *中断処理
  736. 37400   IF DG_FLAG=0 THEN
  737. 37450       NAME "..\CATLOGDF.ORG" AS "..\CATLOG.DEF"
  738. 37500   ENDIF
  739. 37550   RETURN
  740. 37600 *元DEFチェック
  741. 37700   FOR I=0 TO DF_MAX
  742. 37750       IF LEFT$(MOT$(I),1)="-" THEN
  743. 37800            YES_NO_FLAG=1
  744. 37850            P0=INSTR(MOT$(I),":")
  745. 37900            P1=INSTR(MOT$(I),";")
  746. 37950            IF P1<>0 AND P1<P0 THEN P0=0
  747. 38000            IF P0<>0 THEN
  748. 38050                 C0$=LEFT$(MOT$(I),P0-1)
  749. 38100                 IF P1=0 THEN
  750. 38150                     C1$=RIGHT$(MOT$(I),LEN(MOT$(I))-P0+1)
  751. 38160                     C2$=""
  752. 38200                 ELSE
  753. 38250                     C1$=MID$(MOT$(I),P0,P1-P0)
  754. 38260                     C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  755. 38300                 ENDIF
  756. 38350            ELSE
  757. 38400                 C1$="yes"
  758. 38450                 IF P1=0 THEN
  759. 38500                     C0$=MOT$(I)
  760. 38510                     C2$=""
  761. 38550                 ELSE
  762. 38600                     C0$=LEFT$(MOT$(I),P1-1)
  763. 38610                     C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  764. 38650                 ENDIF
  765. 38700            ENDIF
  766. 38750       ELSE
  767. 38800           IF LEFT$(MOT$(I),1)=";"  AND MID$(MOT$(I),2,1)="-" THEN
  768. 38850                YES_NO_FLAG=0
  769. 38900                MOT$(I)=RIGHT$(MOT$(I),LEN(MOT$(I))-1)
  770. 38950                P0=INSTR(MOT$(I),":")
  771. 39000                P1=INSTR(MOT$(I),";")
  772. 39050                IF P1<>0 AND P1<P0 THEN P0=0
  773. 39100                IF P0<>0 THEN
  774. 39150                     C0$=LEFT$(MOT$(I),P0-1)
  775. 39200                     IF P1=0 THEN
  776. 39250                         C1$=RIGHT$(MOT$(I),LEN(MOT$(I))-P0+1)
  777. 39260                         C2$=""
  778. 39300                     ELSE
  779. 39350                         C1$=MID$(MOT$(I),P0,P1-P0)
  780. 39360                         C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  781. 39400                     ENDIF
  782. 39450                ELSE
  783. 39500                     C1$="no"
  784. 39550                     IF P1=0 THEN
  785. 39600                         C0$=RIGHT$(MOT$(I),LEN(MOT$(I))-1)
  786. 39610                         C2$=""
  787. 39650                     ELSE
  788. 39700                         C0$=LEFT$(MOT$(I),P1-1)
  789. 39710                         C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1)
  790. 39750                     ENDIF
  791. 39800                ENDIF
  792. 39850           ENDIF
  793. 39900       ENDIF
  794. 39950       GOSUB *コマンド照合
  795. 40000  '   PRINT C0$,C1$,P0,P1 : PRINT CMD$(J),DF$(J),MES$(J)
  796. 40050   NEXT I
  797. 40100   RETURN
  798. 40150 *コマンド照合
  799. 40200   J=0
  800. 40250   WHILE CMD$(J)<>C0$
  801. 40300       J=J+1
  802. 40350   WEND
  803. 40400   IF NOT(YES_NO_FLAG=0 AND Y_N_FLAG(J)=1) THEN
  804. 40450       DF$(J)=C1$
  805. 40550       Y_N_FLAG(J)=YES_NO_FLAG
  806. 40600   ENDIF
  807. 40650   RETURN
  808. 40700 *スイッチ拡張対策
  809. 40750   J=0
  810. 40800   WHILE Y_N_FLAG(J)<>-1
  811. 40850       J=J+1
  812. 40900   WEND
  813. 40940   LOCATE 18,23 : PRINT
  814. 40950   LOCATE 18,23 : PRINT USING "###番目に@を追加します";J,C0$;
  815. 41000   CMD$(J)=C0$ : DF$(J)=C1$ : MES$(J)=C2$ : Y_N_FLAG(J)=0
  816. 41050   LOCATE 5,18: PRINT "???番目に-Xxxx-Xxxxxを追加しますと下に表示された時には、DEFGENの"
  817. 41100   LOCATE 5,19: PRINT "サポートスイッチ以外のスイッチが元DEFにあった場合です。この場合でも元DEFに"
  818. 41150   LOCATE 5,20: PRINT "あったスイッチを新DEFにCOPYしますので、サポートするまではエディタで修正して"
  819. 41200   LOCATE 5,21: PRINT "という限定付きですが使用可能です。"
  820. 41250   RETURN
  821. 41300 *コマンドリストREAD
  822. 41350   I=0
  823. 41400   OPEN "DEFGEN_D.DAT" FOR INPUT AS #1
  824. 41450   WHILE NOT(EOF(1))
  825. 41500      INPUT #1,DUMMY$
  826. 41550      Y_N_FLAG(I)=VAL(DUMMY$)
  827. 41600      INPUT #1,CMD$(I),DF$(I),MES$(I)
  828. 41650      IF CMD$(I)="-I" THEN
  829. 41700          SWAP Y_N_FLAG(I),Y_N_FLAG(100):SWAP CMD$(I),CMD$(100)
  830. 41750          SWAP DF$(I),DF$(100)  :SWAP MES$(I),MES$(100)
  831. 41850      ELSE
  832. 41900          I=I+1
  833. 41950      ENDIF
  834. 42000   WEND
  835. 42050   CML_MAX=I-1
  836. 42100   CLOSE #1
  837. 42150   RETURN
  838. 42200 *元DEFファイル読み込み
  839. 42250   LOCATE 18,22 : PRINT "元DEFファイルを読み込んでいます";
  840. 42300   DG_FLAG=0
  841. 42350   OPEN "..\CATLOG.DEF" FOR INPUT AS #1
  842. 42400   LINE INPUT #1,DUMMY$
  843. 42450   IF DUMMY$=";DEFGEN生成ファイル" THEN
  844. 42500       DG_FLAG=-1 : I=0
  845. 42550   ELSE
  846. 42600       IF LEFT$(DUMMY$,1)="-" THEN
  847. 42650           MOT$(0)=DUMMY$ : I=1
  848. 42700       ELSE
  849. 42750           IF LEFT$(MOT$(I),1)=";"  AND MID$(MOT$(I),2,1)="-" THEN
  850. 42800               MOT$(0)=DUMMY$ : I=1
  851. 42850           ENDIF
  852. 42900           I=0
  853. 42950       ENDIF
  854. 43000   ENDIF
  855. 43050   WHILE NOT(EOF(1))
  856. 43100       LINE INPUT #1,DUMMY$
  857. 43150       IF LEFT$(DUMMY$,1)="-" OR (LEFT$(DUMMY$,1)=";"  AND MID$(DUMMY$,2,1)="-") THEN
  858. 43160           A=INSTR(DUMMY$,"-")
  859. 43170           IF MID$(DUMMY$,A+1,1)>="A" AND MID$(DUMMY$,A+1,1)<="Z" THEN
  860. 43200               MOT$(I)=DUMMY$ : I=I+1
  861. 43210 ' PRINT DUMMY$ : A$=INPUT$(1)
  862. 43240           ENDIF
  863. 43250       ENDIF
  864. 43300   WEND
  865. 43350   DF_MAX=I-1
  866. 43400   CLOSE #1
  867. 43450   IF DG_FLAG=0 THEN
  868. 43500       NAME "..\CATLOG.DEF" AS "..\CATLOGDF.ORG"
  869. 43550    '  NAME "..\CATLOGDF.ORG" AS "..\CATLOG.DEF"
  870. 43600   ENDIF
  871. 43650   GOSUB *元DEFチェック
  872. 43700   RETURN
  873. 43750 *元DEFなし
  874. 44600   RETURN
  875. 44610 *強制サポートセット
  876. 44620   Y_N_FLAG(1)=1
  877. 44630   Y_N_FLAG(2)=1
  878. 44635   Y_N_FLAG(100)=1
  879. 44640   Y_N_FLAG(48)=0
  880. 44645   RETURN
  881. 44650 *開始画面設定
  882. 44700   CLS
  883. 44750   PLAY ON
  884. 44800   PLAY "@51T180C8DE2DC8.R16C8DEDC8D2"
  885. 44850   PLAY "@15"
  886. 44900   PAGE=1
  887. 44950   LOCATE 0,0
  888. 45000   PRINT " CATLOG小判鮫ソフト(^^;) DEF GENERATOR";VER$;"  PED00201 JINX"
  889. 45050   LINE (0,0)-(639,19),OR,%201,BF
  890. 45100   LOCATE 0,2
  891. 45150   PRINT "このソフトはCATLOG.DEFをとりあえず使える状態にセットアップするものです。"
  892. 45200   PRINT "山先さんから本家DEF設定プログラムが発表されるまでのつなぎですので、エディタを"
  893. 45250   PRINT "自由に使えるスキルの持ち主には無用の物です。"
  894. 45300   PRINT "選択肢の用意されている項目は、マウスで希望の側を左クリックしてください。"
  895. 45350   PRINT "ファイル名を指定する必要のある項目では入力域にマウスを移動し左クリック後、"
  896. 45400   PRINT "キーボードからドライブ名:ディレクトリ名を入力してください。"
  897. 45450   COLOR 5,,,4
  898. 45500   LOCATE 3,9 : PRINT "☆★設定画面のルール(^^)/~"
  899. 45550   COLOR 7,,,0
  900. 45600   LOCATE 5,10: PRINT "必須設定項目を示します。この設定抜きにはCATLOGは動きません。"
  901. 45650       X=5:Y=10:M=70:C=205:GOSUB *ボックス
  902. 45700   LOCATE 5,11: PRINT "設定した方が望ましい項目を示します。"
  903. 45750       X=5:Y=11:M=70:C=206:GOSUB *ボックス
  904. 45800   LOCATE 7,12: PRINT "OFFにした場合にはCATLOGの初期値(カレントディレクトリ等)になります"
  905. 45850       X=7:Y=12:M=56:C=206:GOSUB *ボックス
  906. 45900   LOCATE 5,13: PRINT "選択した時にこの色になります。"
  907. 45950       X=5:Y=13:M=70:C=207:GOSUB *ボックス
  908. 46000   LOCATE 5,14: PRINT "選択されてない場合の表示色です。"
  909. 46050       X=5:Y=14:M=70:C=202:GOSUB *ボックス
  910. 46100   LOCATE 5,15: PRINT "更新して終了 更新せずに終了 のいずれかを左クリックで終了します。"
  911. 46150       X=5:Y=15:M=12:C=203:GOSUB *ボックス
  912. 46200       X=18:Y=15:M=14:C=204:GOSUB *ボックス
  913. 46250   LOCATE 5,16: PRINT "また右クリックは 更新せずに終了 を左クリックと同じ動きとなります。"
  914. 46300       X=18:Y=16:M=14:C=204:GOSUB *ボックス
  915. 46350   FOR I=0 TO 100 : Y_N_FLAG(I)=-1 : NEXT I
  916. 46400   RETURN
  917. 46450 *パレット設定
  918. 46500   OPEN "DEFGENPT.DAT" FOR INPUT AS #1
  919. 46550   I=200
  920. 46600   WHILE NOT(EOF(1))
  921. 46650       LINE INPUT #1,DUMMY$
  922. 46700       IF LEFT$(DUMMY$,1)<>";" THEN
  923. 46750           POI1=INSTR(DUMMY$,","):POI2=INSTR(POI1+1,DUMMY$,","):POI3=INSTR(POI2+1,DUMMY$,",")
  924. 46800           GREEN=VAL(LEFT$(DUMMY$,POI1-1))
  925. 46850           RED=VAL(MID$(DUMMY$,POI1+1,POI2-POI1-1))
  926. 46900           BLUE=VAL(MID$(DUMMY$,POI2+1,POI3-POI2-1))
  927. 46950           PALETTE I,[GREEN,RED,BLUE]
  928. 47000           I=I+1
  929. 47050        ENDIF
  930. 47100   WEND
  931. 47150   CLOSE #1
  932. 47200   RETURN
  933. 47250 *設定不良
  934. 47300   PRINT "DEFGENのプログラムのあるディレクトリに正しく設定してから再起動してください"
  935. 47350   PRINT : PRINT "プログラムは中断しました      <何かキーを押して下さい>"
  936. 47400   A$=INPUT$(1)
  937. 47450   STOP
  938. 47500 *エラーやで
  939. 47550   IF ERR=63 AND ERL=42350 THEN RESUME *元DEFなし
  940. 47600   IF ERR=63 AND ERL=36200 THEN RESUME NEXT
  941. 47650   IF ERR=9 AND ERL=40250 THEN RESUME *スイッチ拡張対策
  942. 47700   IF ERR=9 AND ERL=40350 THEN RESUME *スイッチ拡張対策
  943. 47750   IF ERR=63 AND ERL=41400 THEN
  944. 47800        BEEP : CLS
  945. 47850        PRINT "DEFGEN_D.DAT(スイッチデータファイル)がありません。"
  946. 47900        RESUME *設定不良
  947. 47950   ENDIF
  948. 48000   IF ERR=63 AND ERL=46500 THEN
  949. 48050        BEEP : CLS
  950. 48100        PRINT "DEFGENPT.DAT(パレット設定ファイル)がありません。"
  951. 48150        RESUME *設定不良
  952. 48200   ENDIF
  953. 48250   PRINT USING "ERR=#######    ERL=########";ERR,ERL
  954. 48300   STOP
  955.